ORB Heikin Ashi SPY 5min Correlation StrategyOverview:
The ORB (Opening Range Breakout) strategy combined with Heikin Ashi candles and Relative Volume (RVOL) indicator aims to capitalize on significant price movements that occur shortly after the market opens. This strategy identifies breakouts above or below the opening range, using Heikin Ashi candles for smoother price visualization and RVOL to gauge the strength of the breakout.
Components:
Opening Range Breakout (ORB): The strategy starts by defining the opening range, typically the first few minutes of the trading session. It then identifies breakouts above the high or below the low of this range as potential entry points.
Heikin Ashi Candles: Heikin Ashi candles are used to provide a smoother representation of price movements compared to traditional candlesticks. By averaging open, close, high, and low prices of the previous candle, Heikin Ashi candles reduce noise and highlight trends more effectively.
Relative Volume (RVOL): RVOL compares the current volume of a stock to its average volume over a specified period. It helps traders identify abnormal trading activity, which can signal potential price movements.
Candle for correlation : In this case we are using SPY candles. It can also use different asset
Strategy Execution:
Initialization: The strategy initializes by setting up variables and parameters, including the ORB period, session timings, and Heikin Ashi candle settings.
ORB Calculation: It calculates the opening range by identifying the high and low prices during the specified session time. These values serve as the initial reference points for potential breakouts. For this we are looking for the first 30 min of the US opening session.
After that we are going to use the next 2 hours to check for breakout opportunities.
Heikin Ashi Transformation: Optionally, the strategy transforms traditional candlestick data into Heikin Ashi format for smoother visualization and trend identification.
Breakout Identification: It continuously monitors price movements within the session and checks if the current high breaches the ORB high or if the current low breaches the ORB low. These events trigger potential long or short entry signals, respectively.
RVOL Analysis: Simultaneously, the strategy evaluates the relative volume of the asset to gauge the strength of the breakout. A surge in volume accompanying the breakout confirms the validity of the signal. In this case we are looking for at least a 1 value of the division between currentVolume and pastVolume
Entry and Exit Conditions: When a breakout occurs and is confirmed by RVOL and is within our session time, the strategy enters a long or short position accordingly. It does not have a stop loss or a takie profit level, instead it will always exit at the end of the trading session, 5 minutes before
Position Sizing and Commissions: For the purpose of this backtest, the strategy allocated 10% of the capital for each trade and assumes a trading commission of 0.01$ per share ( twice the IBKR broker values)
Session End: At the end of the trading session, the strategy closes all open positions to avoid overnight exposure.
Conclusion:
The combination of ORB breakout strategy, Heikin Ashi candles, and RVOL provides traders with a robust framework for identifying and capitalizing on early trends in the market. By leveraging these technical indicators together, traders can make more informed decisions and improve the overall performance of their trading strategies. However, like any trading strategy, it's essential to backtest thoroughly and adapt the strategy to different market conditions to ensure its effectiveness over time.
在腳本中搜尋"the strat"
GM-8 and ADX Strategy with Second EMADescription:
This TradingView script implements a trading strategy based on the Moving Average (GM-8), the Average Directional Index (ADX), and the second Exponential Moving Average (EMA). The strategy utilizes these indicators to identify potential buy and sell signals on the chart.
Indicators:
GM-8 (Moving Average 8): This indicator calculates the average price of the last 8 periods and is used to identify trends.
ADX (Average Directional Index): The ADX measures the strength of a trend and is used to determine whether the market is moving in a particular direction or not.
Second EMA (Exponential Moving Average): This is an additional EMA line with a period of 59, which is used to provide additional confirmation signals for the trend.
Trading Conditions:
Buy Condition: A buy signal is generated when the closing price is above the GM-8 and the second EMA, and the ADX value is above the specified threshold.
Sell Condition: A sell signal is generated when the closing price is below the GM-8 and the second EMA, and the ADX value is above the specified threshold.
Trading Logic:
If a buy condition is met, a long position is opened with a user-defined lot size.
If a sell condition is met, a short position is opened with the same user-defined lot size.
Positions are closed when the opposite conditions are met.
User Parameters:
Users can adjust the periods for the GM-8, the second EMA, and the ADX, as well as the threshold for the ADX and the lot size according to their preferences.
Note:
This script has been developed for use on a $100,000 account with FTMO, therefore the account size is set to $100,000. Please ensure that the strategy parameters and settings meet the requirements of your trading strategy and carefully review the results before committing real capital.
--------------------------------------------------------------------------------------------------------------
Beschreibung:
Dieses TradingView-Skript implementiert eine Handelsstrategie, die auf dem gleitenden Mittelwert (GM-8), dem Average Directional Index (ADX) und der zweiten exponentiellen gleitenden Durchschnittslinie (EMA) basiert. Die Strategie verwendet diese Indikatoren, um potenzielle Kauf- und Verkaufssignale auf dem Chart zu identifizieren.
Indikatoren:
GM-8 (Gleitender Mittelwert 8): Dieser Indikator berechnet den Durchschnittspreis der letzten 8 Perioden und wird verwendet, um Trends zu identifizieren.
ADX (Average Directional Index): Der ADX misst die Stärke eines Trends und wird verwendet, um festzustellen, ob sich der Markt in eine bestimmte Richtung bewegt oder nicht.
Zweite EMA (Exponential Moving Average): Dies ist eine zusätzliche EMA-Linie mit einer Periode von 59, die verwendet wird, um zusätzliche Bestätigungssignale für den Trend zu liefern.
Handelsbedingungen:
Kaufbedingung: Es wird ein Kaufsignal generiert, wenn der Schlusskurs über dem GM-8 und der zweiten EMA liegt und der ADX-Wert über dem angegebenen Schwellenwert liegt.
Verkaufsbedingung: Es wird ein Verkaufssignal generiert, wenn der Schlusskurs unter dem GM-8 und der zweiten EMA liegt und der ADX-Wert über dem angegebenen Schwellenwert liegt.
Handelslogik:
Wenn eine Kaufbedingung erfüllt ist, wird eine Long-Position mit einer benutzerdefinierten Losgröße eröffnet.
Wenn eine Verkaufsbedingung erfüllt ist, wird eine Short-Position mit derselben benutzerdefinierten Losgröße eröffnet.
Positionen werden geschlossen, wenn die Gegenbedingungen erfüllt sind.
Benutzerparameter:
Benutzer können die Perioden für den GM-8, die zweite EMA und den ADX sowie den Schwellenwert für den ADX und die Losgröße nach ihren eigenen Präferenzen anpassen.
Hinweis:
Dieses Skript wurde für die Verwendung auf einem $100.000-Konto bei FTMO entwickelt, daher ist die Kontogröße auf $100.000 festgelegt. Bitte stellen Sie sicher, dass die Strategieparameter und -einstellungen den Anforderungen Ihrer Handelsstrategie entsprechen und dass Sie die Ergebnisse sorgfältig überprüfen, bevor Sie echtes Kapital einsetzen.
Advanced Trend Strategy [BITsPIP]The BITsPIP team is super excited to share our latest trading gem with you all. We're all about diving deep and ensuring our strategies can stand the test of time. So, we invite you to join us in exploring the awesome potential of this new strategy and really put it through its pace with some deep backtesting. This isn't just another strategy; it boasts a profit factor hovering around 1.5 across over 1000 trades, which is quite an achievement. Consider integrating it with your trading bots to further enhance your trading efficiency and profit generation. Curious? Ask for trial access or drop by our website for more details.
I. Deep Backtesting
We're all in on transparency and solid results, which is why we didn't stop at 100... or even 500 trades. We went over 1000, making sure this strategy is as robust as they come. No flimsy forecasts or sneaky repainting here. Just good, solid strategy that's ready for the real deal. Curious about the details? Check out our detailed backtesting screenshot for the BINANCE:BTCUSDT in a 5-minute timeframe. It's all about giving you the clear picture.
#No Overfitting
#No Repainting
Backtesting Screenshot
II. Algorithmic Trading
Thinking of trading as a manual game? Think again! Manual trading is a bit like rolling the dice - fun, but kind of risky if you're aiming for consistent wins. Instead, why not lean into the future with algorithmic trading? It's all about trusting the market's rhythm over the long term. By integrating your strategy with a trading bot, you can enjoy peace of mind, rest easy, and keep those emotional trades at bay.
III) Applications
Dive into the Advanced Trend Strategy, your versatile tool for navigating the market's waters. This strategy shines in under an hour timeframes, offering adaptability across stocks, commodities, forex, and cryptocurrencies. Initially fine-tuned for low-volatility cryptos like BINANCE:BTCUSDT , its default settings are a solid starting point.
But here's where your expertise comes into play. Each market beats to its own drum, necessitating nuanced adjustments to stop loss and take profit settings. This customization is key to maximizing the strategy's effectiveness in your chosen arena.
IV) Strategy's Logic
The Advanced Trend Strategy is a powerhouse, blending the precision of Hull Suite, RSI, and our unique trend detector technique. At its core, it’s designed for savvy risk management, aiming to lock in substantial profits while steering clear of minor market ripples. It utilizes stop-loss and take-profit thresholds to form a profit channel, providing a safety net for each trade. This is a trend-following strategy at heart, where these profit channels play a critical role in maximizing returns by securing positions within these "warranty channels."
1. Trend-Following
The market's complexity, influenced by countless factors, makes small movements seem almost chaotic. Yet, the principle of #Trend-Following shines in less volatile markets in long term. The strategy excels by pinpointing the ideal moments to enter the market, coupled with refined risk management to secure profits. It’s tailored for you, the individual trader, enabling you to ride the waves of market trends upwards or downwards.
2. Risk Management
A key facet of the strategy is its emphasis on pragmatic risk management. Traders are empowered to establish practical stop-loss and take-profit levels, tailoring these crucial parameters to the specific market they are engaging in. This customization is instrumental in optimizing long-term profitability, ensuring that the strategy adapts fluidly to the unique characteristics and volatility patterns of different trading environments.
V) Strategy's Input Settings and Default Values
1. Alerts
The strategy comes equipped with a flexible alert system designed to keep you informed and ready to act. Within the settings, you’ll find options to configure order/exit and comment/alert messages to your preference. This feature is particularly useful for staying on top of the strategy’s activities without constant manual oversight.
2. Hull Suite
i. Hull Suite Length: Designed for capturing long-term trends, the Hull Suite Length is configured at 1000. Functioning comparably to moving averages, the Hull Suite features upper and lower bands. Currently, it is set to 1000.
ii. Length Multiplier: It's advisable to maintain a minimal value for the Length Multiplier, prioritizing the optimization of the Hull Suite Length. Presently, it is set to 1.
3. RSI Indicator
i. The RSI is a widely recognized tool in trading. Adapt the oversold and overbought thresholds to better match the specifics of your market for optimal results.
4. StopLoss and TakeProfit
i. StopLoss and TakeProfit Settings: Two distinct approaches are available. Semi-Automatic StopLoss/TakeProfit Setting and Manual StopLoss/TakeProfit Setting. The Semi-Automatic mode streamlines the process by allowing you to input values for a 5-minute timeframe, subsequently auto-adjusting these values across various timeframes, both lower and higher. Conversely, the Manual mode offers full control, enabling you to meticulously define TakeProfit values for each individual timeframe.
ii. TakeProfit Threshold # and TakeProfit Value #: Imagine this mechanism as an ascending staircase. Each step represents a range, with the lower boundary (TakeProfit Value) designed to close the trade upon being reached, and the upper boundary (TakeProfit Threshold) upon being hit, propelling the trade to the next level, and forming a new range. This stair-stepping approach enhances risk management and increases profitability. The pre-set configurations are tailored for $BINANCE:BTCUSDT. It's advisable to devote time to tailoring these settings to your specific market, aiming to achieve optimal results based on backtesting.
iii. StopLoss Value: In line with its name, this value marks the limit of loss you're prepared to accept should the market trend go against your expectations. It's crucial to note that once your asset reaches the first TakeProfit range, the initial StopLoss value becomes obsolete, supplanted by the first TakeProfit Value. The default StopLoss value is pegged at 1.6(%), a figure worth considering in your trading strategy.
VI) Entry Conditions
The primary signal for entry is generated by our custom trend detection mechanism and hull suite values (ascending/descending). This is supported by additional indicators acting as confirmation.
VII) Exit Conditions
The strategy stipulates exit conditions primarily governed by stop loss and take profit parameters. On infrequent occasions, if the trend lacks confirmation post-entry, the strategy mandates an exit upon the issuance of a reverse signal (whether confirmed or unconfirmed) by the strategy itself.
BITsPIP
Vegas SuperTrend Enhanced - Strategy [presentTrading]█ Introduction and How it is Different
The "Vegas SuperTrend Enhanced - Strategy " trading strategy represents a novel integration of two powerful technical analysis tools: the Vegas Channel and the SuperTrend indicator. This fusion creates a dynamic, adaptable strategy designed for the volatile and fast-paced cryptocurrency markets, particularly focusing on Bitcoin trading.
Unlike traditional trading strategies that rely on a static set of rules, this approach modifies the SuperTrend's sensitivity to market volatility, offering traders the ability to customize their strategy based on current market conditions. This adaptability makes it uniquely suited to navigating the often unpredictable swings in cryptocurrency valuations, providing traders with signals that are both timely and reflective of underlying market dynamics.
BTC 6h LS
█ Strategy, How it Works: Detailed Explanation
This is an innovative approach that combines the volatility-based Vegas Channel with the trend-following SuperTrend indicator to create dynamic trading signals. This section delves deeper into the mechanics and mathematical foundations of the strategy.
Detail picture to show :
🔶 Vegas Channel Calculation
The Vegas Channel serves as the foundation of this strategy, employing a simple moving average (SMA) coupled with standard deviation to define the upper and lower bounds of the trading channel. This channel adapts to price movements, offering a visual representation of potential support and resistance levels based on historical price volatility.
🔶 SuperTrend Indicator Adjustment
Central to the strategy is the SuperTrend indicator, which is adjusted according to the width of the Vegas Channel. This adjustment is achieved by modifying the SuperTrend's multiplier based on the channel's volatility, allowing the indicator to become more sensitive during periods of high volatility and less so during quieter market phases.
🔶 Trend Determination and Signal Generation
The market trend is determined by comparing the current price with the SuperTrend values. A shift from below to above the SuperTrend line signals a potential bullish trend, prompting a "buy" signal, whereas a move from above to below indicates a bearish trend, generating a "sell" signal. This methodology ensures that trades are entered in alignment with the prevailing market direction, enhancing the potential for profitability.
BTC 6h Local
█ Trade Direction
A distinctive feature of this strategy is its configurable trade direction input, allowing traders to specify whether they wish to engage in long positions, short positions, or both. This flexibility enables users to tailor the strategy according to their risk tolerance, trading style, and market outlook, providing a personalized trading experience.
█ Usage
To utilize the "Vegas SuperTrend - Enhanced" strategy effectively, traders should first adjust the input settings to align with their trading preferences and the specific characteristics of the asset being traded. Monitoring the strategy's signals within the context of overall market conditions and combining its insights with other forms of analysis can further enhance its effectiveness.
█ Default Settings
- Trade Direction: Both (allows trading in both directions)
- ATR Period for SuperTrend: 10 (determines the length of the ATR for volatility measurement)
- Vegas Window Length: 100 (sets the length of the SMA for the Vegas Channel)
- SuperTrend Multiplier Base: 5 (base multiplier for SuperTrend calculation)
- Volatility Adjustment Factor: 5.0 (adjusts SuperTrend sensitivity based on Vegas Channel width)
These default settings provide a balanced approach suitable for various market conditions but can be adjusted to meet individual trading needs and objectives.
Fine-tune Inputs: Fourier Smoothed Volume zone oscillator WFSVZ0Use this Strategy to Fine-tune inputs for the (W&)FSVZ0 Indicator.
Strategy allows you to fine-tune the indicator for 1 TimeFrame at a time; cross Timeframe Input fine-tuning is done manually after exporting the chart data.
I suggest using "Close all" input False when fine-tuning Inputs for 1 TimeFrame. When you export data to Excel/Numbers/GSheets I suggest using "Close all" input as True, except for the lowest TimeFrame.
MEANINGFUL DESCRIPTION:
The Volume Zone oscillator breaks up volume activity into positive and negative categories. It is positive when the current closing price is greater than the prior closing price and negative when it's lower than the prior closing price. The resulting curve plots through relative percentage levels that yield a series of buy and sell signals, depending on level and indicator direction.
The Wavelet & Fourier Smoothed Volume Zone Oscillator (W&)FSVZO is a refined version of the Volume Zone Oscillator, enhanced by the implementation of the Discrete Fourier Transform . Its primary function is to streamline price data and diminish market noise, thus offering a clearer and more precise reflection of price trends.
By combining the Wavalet and Fourier aproximation with Ehler's white noise histogram, users gain a comprehensive perspective on volume-related market conditions.
HOW TO USE THE INDICATOR:
The default period is 2 but can be adjusted after backtesting. (I suggest 5 VZO length and NoiceR max length 8 as-well)
The VZO points to a positive trend when it is rising above the 0% level, and a negative trend when it is falling below the 0% level. 0% level can be adjusted in setting by adjusting VzoDifference. Oscillations rising below 0% level or falling above 0% level result in a natural trend.
HOW TO USE THE STRATEGY:
Here you fine-tune the inputs until you find a combination that works well on all Timeframes you will use when creating your Automated Trade Algorithmic Strategy. I suggest 4h, 12h, 1D, 2D, 3D, 4D, 5D, 6D, W and M.
When I ndicator/Strategy returns 0 or natural trend , Strategy Closes All it's positions.
ORIGINALITY & USFULLNESS:
Personal combination of Fourier and Wavalet aproximation of a price which results in less noise Volume Zone Oscillator.
The Wavelet Transform is a powerful mathematical tool for signal analysis, particularly effective in analyzing signals with varying frequency or non-stationary characteristics. It dissects a signal into wavelets, small waves with varying frequency and limited duration, providing a multi-resolution analysis. This approach captures both frequency and location information, making it especially useful for detecting changes or anomalies in complex signals.
The Discrete Fourier Transform (DFT) is a mathematical technique that transforms discrete data from the time domain into its corresponding representation in the frequency domain. This process involves breaking down a signal into its individual frequency components, thereby exposing the amplitude and phase characteristics inherent in each frequency element.
This indicator utilizes the concept of Ehler's Universal Oscillator and displays a histogram, offering critical insights into the prevailing levels of market noise. The Ehler's Universal Oscillator is grounded in a statistical model that captures the erratic and unpredictable nature of market movements. Through the application of this principle, the histogram aids traders in pinpointing times when market volatility is either rising or subsiding.
DETAILED DESCRIPTION:
My detailed description of the indicator and use cases which I find very valuable.
What is oscillator?
Oscillators are chart indicators that can assist a trader in determining overbought or oversold conditions in ranging (non-trending) markets.
What is volume zone oscillator?
Price Zone Oscillator measures if the most recent closing price is above or below the preceding closing price.
Volume Zone Oscillator is Volume multiplied by the 1 or -1 depending on the difference of the preceding 2 close prices and smoothed with Exponential moving Average.
What does this mean?
If the VZO is above 0 and VZO is rising. We have a bullish trend. Most likely.
If the VZO is below 0 and VZO is falling. We have a bearish trend. Most likely.
Rising means that VZO on close is higher than the previous day.
Falling means that VZO on close is lower than the previous day.
What if VZO is falling above 0 line?
It means we have a high probability of a bearish trend.
Thus the indicator returns 0 and Strategy closes all it's positions when falling above 0 (or rising bellow 0) and we combine higher and lower timeframes to gauge the trend.
In the next Image you can see that trend is negative on 4h, negative on 12h and positive on 1D. That means trend is negative.
I am sorry, the chart is a bit messy. The idea is to use the indicator over more than 1 Timeframe.
What is approximation and smoothing?
They are mathematical concepts for making a discrete set of numbers a
continuous curved line.
Fourier and Wavelet approximation of a close price are taken from aprox library.
Key Features:
You can tailor the Indicator/Strategy to your preferences with adjustable parameters such as VZO length, noise reduction settings, and smoothing length.
Volume Zone Oscillator (VZO) shows market sentiment with the VZO, enhanced with Exponential Moving Average (EMA) smoothing for clearer trend identification.
Noise Reduction leverages Euler's White noise capabilities for effective noise reduction in the VZO, providing a cleaner and more accurate representation of market dynamics.
Choose between the traditional Fast Fourier Transform (FFT) , the innovative Double Discrete Fourier Transform (DTF32) and Wavelet soothed Fourier soothed price series to suit your analytical needs.
Image of Wavelet transform with FAST settings, Double Fourier transform with FAST settings. Improved noice reduction with SLOW settings, and standard FSVZO with SLOW settings:
Fast setting are setting by default:
VZO length = 2
NoiceR max Length = 2
Slow settings are:
VZO length = 5 or 7
NoiceR max Length = 8
As you can see fast setting are more volatile. I suggest averaging fast setting on 4h 12h 1d 2d 3d 4d W and M Timeframe to get a clear view on market trend.
What if I want long only when VZO is rising and above 15 not 0?
You have set Setting VzoDifference to 15. That reduces the number of trend changes.
Example of W&FSVZO with VzoDifference 15 than 0:
VZO crossed 0 line but not 15 line and that's why Indicator returns 0 in one case an 1 in another.
What is Smooth length setting?
A way of calculating Bullish or Bearish (W&)FSVZO .
If smooth length is 2 the trend is rising if:
rising = VZO > ta.ema(VZO, 2)
Meaning that we check if VZO is higher that exponential average of the last 2 elements.
If smooth length is 1 the trend is rising if:
rising = VZO_ > VZO_
Use this Strategy to fine-tune inputs for the (W&)FSVZO Indicator.
(Strategy allows you to fine-tune the indicator for 1 TimeFrame at a time; cross Timeframe Input fine-tuning is done manually after exporting the chart data)
I suggest using " Close all " input False when fine-tuning Inputs for 1 TimeFrame . When you export data to Excel/Numbers/GSheets I suggest using " Close all " input as True , except for the lowest TimeFrame . I suggest using 100% equity as your default quantity for fine-tune purposes. I have to mention that 100% equity may lead to unrealistic backtesting results. Be avare. When backtesting for trading purposes use Contracts or USDT.
Market Volatility Strategy (MVS)/Introduction
The Market Volatility Strategy (MVS) is based on volatility as an anomaly for making abnormal returns in the stock market. It uses the VIX, often referred to as the "fear gauge" which measures the market's expectation of 30-day volatility based on S&P 500 index options, as it's measure of volatility.
/Design
The VIX term structure refers to the relationship between the volatility index (VIX) values across different expiration dates. The term structure is important because it provides insights into market sentiment, risk expectations, and potential volatility in the future. The VIX term structure can take on three main shapes:
1. Contango: This occurs when longer-term VIX futures are priced higher than shorter-term futures. It is the most common shape for the VIX term structure.
2. Backwardation: This occurs when shorter-term VIX futures are priced higher than longer-term futures, indicating that the market expects volatility to decrease over time. Backwardation is less common and is typically seen in periods of high market stress or volatility.
3. Flat: A flat term structure happens when the VIX futures are priced similarly across different expiration dates. This indicates that the market's expectations for volatility are consistent over time.
/Trading
The strategy uses an understanding of the VIX term structure to generate buy and sell signals, as it provides valuable information about future volatility expectations and potential risk.
- Buy Signal
Contango suggests that the market expects volatility to increase over time. In a contango environment, the strategy looks for long volatility trades.
- Sell Signal
Backwardation suggests that investors are concerned about the near term and are willing to pay more for immediate protection. In such scenarios, the strategy looks for short volatility trades.
- Cash
A flat term structure can be transitional, moving from contango to backwardation or vice versa, or it may occur when the market is uncertain about future volatility. The strategy is in cash in this environment.
/Signals
The strategy has three signals:
1) Volatility
2) Volatility+
3) Volatility*
This means a maximum of three positions, one for each signal, can be opened simultaneously to maximize gains from volatility.
/Results
The backtest results are based on a starting capital of $13,700 (convenient amount for retail traders) with 5% of equity for the position size and pyramiding of 3 to allow one open position at a time for each signal. Commissions vary from broker to broker and they are calculated in different ways so a simple but very high commission of $3 per order is used in backtesting this strategy. Slippage of 3 ticks is used to ensure the results are representative of real world, market order trading. Trades are generated on the close of the candle to avoid bias. The backtest results are available to view at the bottom of this page.
Note:
Past performance in backtesting does not guarantee future results. Broker execution, market changes and trader psychology can significantly affect strategy performance in live trading.
Originality:
The MVS strategy is unique because it is based on data from the futures and options markets. This is data that is not usually accessible or understood by the retail trader hence, volatility strategies are difficult for them to design. The strategy gives retail traders access to a volatility strategy with no parameters, this greatly reduces the risk of curve fitting while increasing robustness.
/Tickers
This strategy has been backtested primarily on SPXL but it is suitable for use on the VIX ETFs.
Kyrie Crossover ( @zaytradellc )Unlocking Market Dynamics: Kyrie Crossover Script by @zaytradellc
personalized trading success with the "Kyrie Crossover" script, meticulously crafted by @zaytrade. This innovative Pine Script, tailored to the birthdays of Kyrie and the script creator, combines the power of technical analysis with a touch of personalization to revolutionize your trading experience.
**Exponential Moving Average (EMA) Crossover Strategy:**
At the heart of the "Kyrie Crossover" script lies a sophisticated EMA crossover strategy. By utilizing a 10-period EMA and a 323-period EMA (symbolizing long term price action ), the strategy effectively captures market trends with precision and insight.
- **Short-Term EMA (10-period):** This EMA reacts swiftly to recent price changes, offering heightened sensitivity to short-term fluctuations. It excels in identifying immediate shifts in market sentiment, making it invaluable for pinpointing short-lived trends and potential reversal points.
- **Long-Term EMA (323-period):** In contrast, the long-term EMA provides a broader perspective by smoothing out short-term noise and focusing on longer-term trend direction. Its extended length filters out market noise effectively, providing a clear representation of the underlying trend's momentum and sustainability.
**Directional Movement Index (DMI) Metrics:**
The "Kyrie Crossover" script goes beyond traditional indicators by incorporating DMI metrics across multiple timeframes. By assessing trend strength and direction, traders gain valuable insights into market dynamics, allowing for informed decision-making.
**Simple Instructions to Profit:**
1. **Identify EMA Crossovers:** Look for instances where the short-term EMA (10-period) crosses above the long-term EMA (323-period) for a bullish signal, indicating a potential buying opportunity. Conversely, a crossover where the short-term EMA crosses below the long-term EMA signals a bearish trend and a potential selling opportunity.
2. **Confirm with DMI Metrics:** Validate EMA crossovers by checking DMI metrics across different timeframes (5 minutes, 15 minutes, 30 minutes, and 1 hour). Pay attention to color-coded indicators, with green indicating a bullish trend, red indicating a bearish trend, and white indicating no clear trend.
3. **Manage Risk:** Implement proper risk management techniques, such as setting stop-loss orders and position sizing based on your risk tolerance and trading objectives.
4. **Stay Informed:** Regularly monitor market conditions and adjust your trading strategy accordingly based on new signals and emerging trends.
KT Litmus2
Hello everyone,
Recently I saw a very good indicator on TV called Ichimoku Oscillator. This is a K-line convergence and divergence indicator similar to MACD. After backtesting research, this indicator performs well on long-term trends.
Since it is an indicator, it is made into a strategy category. Several optimizations have also been made.
This strategy takes into account the following market factors:
EMA -> Trend
Fast line - slow line -> moving average
EMA Squeeze -> Momentum Conversion, Trend
ATR -> Noise Reduction
How does it compare to the original indicator?
Optimized background display so the canvas doesn't feel cluttered with excessive colors.
Optimized part of the position reduction logic so that too many trading signals will not affect the performance of the strategy.
NOTE: As you can see, there are potential improvements that can be made by merging volumes.
Signal
Input level -> Kinetic energy enhancement, +4 long, -4 short
Partial exit level -> moving average (EMA | fast and slow line) crossing, trend unchanged
All exit levels -> trend conversion
Risk Management
"Trend Stop Loss" and "Momentum Take Profit" are used here.
Trend stop loss: Use the conversion of the strategy trend parameter wave range to close the order.
Momentum take profit: take advantage of the weakening or reverse trend momentum of the strategy to take profit.
As described, the strategy has obvious advantages in trend trading, but in volatile markets, stop loss may be triggered due to frequent signals.
Now, a set of knowledge is provided for the inexperienced reader.
MACD usually consists of three components. The MACD line is the fast exponential moving average (usually taken on the 12th day) minus the slow exponential moving average (usually taken on the 26th day), generally called the difference (DIF). The second line is the signal line, which is the exponential moving average of DIF (usually 9 days), generally called DEA. The last component is the MACD histogram, whose value is the difference between DIF and DEA. However, the time value of the MACD indicator can also be adjusted according to the trader's preference and trading category.
The underlying logic of DIF is that the short-term exponential moving average reflects current price movements, while the long-term EMA reflects earlier price movements. Therefore, if there is a large gap between these two EMAs, then the market is trending up or down. While the MACD histogram is oscillating around the zero line, indicating the strength of the trend.
EMA: Exponential Moving Average; similar to a simple moving average but exponentially weights the input data.
Sincerely,
salute
---
Acknowledgments:
@LonesomeTheBlue
renew
March 14
Strategies for increasing Python version
Inside Candle StrategyIntroduction
The Inside Candle Breakout Strategy leverages the concept of inside candles as a primary signal for potential breakouts. Unlike common trend-following or scalping strategies, this method focuses on the volatility squeeze indicated by inside candles and aims to capture the momentum that follows these periods of consolidation. The strategy's originality lies in its specific integration of timeframes for signal detection and its application across diverse market conditions without relying on conventional trend indicators.
Strategy Description and Mechanics
Inside Candle Identification: At the heart of this strategy is the detection of inside candles, defined as candles fully contained within the range of the preceding candle. This pattern signifies a temporary balance between buyers and sellers, often preceding significant price movements. The strategy scans for these candles within a user-specified timeframe in the input section of the settings of the strategy, allowing for tailored signal generation based on individual trading preferences.
Entry Points and Market Entries: Upon identifying an inside candle and only once this candle closes, the strategy prepares to enter a trade in the direction of the breakout. Trades are executed in the timeframe selected on the chart, ensuring that entry points are aligned with real-time market movements. This process highlights the strategy's adaptability, making it suitable for various trading styles, from day trading to swing trading.
Overlay Indicator for Enhanced Market Analysis: Accompanying the breakout signals is an overlay indicator comprising two moving averages and a volatility cloud. This feature serves as a secondary tool for market analysis, offering insights into the prevailing market trend and volatility levels. While it doesn't influence the entry or exit signals directly, it provides traders with additional context for refining their decisions, enhancing the strategy's utility. This assistance tool is composed by one moving average and a second line which is calculated adding or subtracting the historical volatility of the asset on the moving average, depending on his momentum.
Strategy Results and Commitment to Realism
Backtesting Protocol: In our commitment to transparency and realism, backtesting results are derived from a dataset that ensures a sufficient number of trades (over 100) to validate the strategy's effectiveness. This approach underscores our dedication to providing traders with reliable and actionable insights.
Risk Management and Trade Sizing: Recognizing the importance of sustainable trading practices, the strategy incorporates strict risk management guidelines. Trades are sized to ensure that only a small percentage of equity is risked on a single trade, adhering to widely accepted risk tolerance levels. The initial account size for this script is set to 10000$.
Strategy Defaults and Justification: The default properties of the strategy, including the risk-reward ratio, average length for moving averages, and other parameters, are carefully chosen based on extensive testing and analysis. These settings represent a balanced approach, aiming to optimize the strategy's performance across a variety of market conditions.
Strategy Components:
- Inside Candles: An inside candle occurs when a candle's high and low are completely contained within the high and low of the previous candle. This pattern indicates a period of consolidation or indecision in the market, often preceding a significant price movement. The strategy detects inside candles based on the user-selected timeframe, allowing traders to capture potential breakouts.
Indicator Overlays:
- Moving Average: A simple moving average (SMA) is calculated over a user-defined length (`Average Length`), providing a dynamic baseline to gauge the market's direction. The strategy offers an option (`Show Moving Average`) to display or hide this moving average on the chart, giving traders control over the visual complexity.
- Volatility Measurement: Alongside the moving average, the strategy assesses market volatility using the standard deviation of the closing prices over the same period defined by the `Average Length`. The moving average is adjusted upwards or downwards by this volatility measure, creating a dynamic channel that reflects the current market conditions.
- Color Gradients for Volatility: The strategy uses a color gradient to fill the area between the moving average and its volatility-adjusted counterpart. This gradient visually represents the volatility level, transitioning from gray (low volatility) to a lighter shade (higher volatility), aiding in the assessment of market sentiment and volatility.
Trading Entries:
- Long Entry: A long position is triggered when the closing price exceeds the high of an inside candle, indicating potential bullish momentum. The strategy places a stop-loss at the low of the inside candle and sets a take-profit level based on the predefined risk-reward ratio (`RR Ratio`).
- Short Entry: Conversely, a short position is initiated when the closing price falls below the low of an inside candle, suggesting bearish pressure. A stop-loss is set at the high of the inside candle, with the take-profit level adjusted according to the risk-reward ratio.
Customization Settings:
- Timeframe: Traders can select the desired timeframe for inside candle detection, tailoring the strategy to fit various trading styles and time horizons.
- RR Ratio: The risk-reward ratio is adjustable, allowing traders to manage the potential risk and return of each trade according to their risk tolerance.
- Average Length: This setting determines the period over which the moving average and volatility are calculated, affecting the sensitivity of the strategy to price movements.
- Visual Settings: Users can customize the appearance of the strategy on their charts, including the colors of the moving average and volatility lines, as well as the line width, enhancing chart readability and personal preference adherence.
Disclaimer
Trading involves significant risk, and it is crucial for traders to conduct their own due diligence before engaging with any strategy. The Inside Candle Breakout Strategy is presented for informational purposes only and does not constitute financial advice.
Self Optimizing ROC [Starbots]Self Optimizing Rate of Change (ROC) Strategy. (non-repainting)
Script constantly tests 15 different ROC parameter combinations for maximum profitability and trades based on the best performing combination.
You will notice that signal lines switch after a bar close sometimes, this is when the strategy optimizes to the better combination and change plots, strategy is dynamic.
---------------------------------------------------------------------------------------------------------
The Rate-of-Change (ROC) indicator, which is also referred to as Momentum, is a pure momentum oscillator that measures the percent change in price from one period to the next. The ROC calculation compares the current price with the price “n” periods ago. The plot forms an oscillator that fluctuates above and below the zero line as the rate of change moves from positive to negative. As a momentum oscillator, ROC signals include centerline crossovers, divergences, and overbought-oversold readings.
ROC = (Close - Close n periods ago) / (Close n periods ago) * 100
-----------------------------------------------------------------------------------------------------------
The logic of self - optimizing:
This script is always backtesting 15 different combinations of ROC settings in the background and saves the net. profit gained for every single one of them, then strategy selects and use the best performing combination of settings currently available for you to trade.
It's recalculating on every bar close - if one of the parameters starts performing better than others - have a higher net profit gain (it's literally like running 15 backtests with different settings in the background) strategy switches to that parameter and continues trading like that until one of the other indicator parameters starts performing better again and switches to that settings.
We are optimizing our strategy based on 15 different 'lengths' or also called 'periods' of ROC.
Inputs (ROC period) : (you don't need to change them, you have a nice wide variety of periods)
🔴Roc (default=9) = 5
🟢Roc2 = 6
🔵Roc3 = 7
🟡Roc4 = 8
🟣Roc5 = 9
🟠Roc6 = 10
🔴Roc7 = 11
🟢Roc8 = 12
🔵Roc9 = 13
🟡Roc10 = 14
🟣Roc11 = 15
🟠Roc12 = 16
🟡Roc13 = 17
🟣Roc14 = 18
🟠Roc15 = 20
Backtester in the background works like this:
backtest ROC1 => save net. profit
backtest ROC2 => save net. profit ;
backtest ROC3 => save net. profit ;
..........
..........
backtest ROC15 => save net. profit ;
=>
It will backtest 15 different ROC parameters and save their profits.
Your strategy then trades based on the best performing (highest net.profit) ROC Setting currently available. It will check the calculations and backtest them on every new bar close - it's like running 15 strategies at time, and manually selecting the best performing one.
________________________________________________________________________
If you wish to use it as INDICATOR - turn on 'Recalculate after every tick' in Properties tab to have this script updating constantly and use it as a normal Indicator tool for manual trading.
-- Noise Filter - This will punish the tiny trades made by certain parameters and give more advantage to big average trades. It's basically normal fee calculation, it will deduct 0.xx % fee from every trade when optimizing. You usually want it to have the same number as your fees on exchange. Large number will choose big long swing trades, small number will prioritize small scalping trades.
-- Turn on ROC Combination Profits and spot the worst/best performing combination. You can change periods to get the best performance after checking this table stats.
-- Backtesting Range - backtest within your desired time window. Example: 'from 01 / 01 /2020 to 01 / 01 /2023'.
-- Optimizing range - you can decrease the amount of bars/data for optimizing script. This way you can keep it up to date to more recent market by selecting optimizing range to optimize it just from the recent 3-6months of data for example. Strategy before this selected range will normally trade (backtest) based on the first ROC period ( 'Roc(default=9)' Input) parameter in your menu if you have Optimizing Range turned on.
**** I recommend 'Optimizing Range' to be turned off, use max amount of available bars in your history for optimization script.
-- Strategy is trading on the bar close without repaint. You can trade Long-Sell or Long- Short. Alerts available, insert webhook messages.
-- Turn on Profit Calendar for better overview of how your strategy performs monthly/annualy
-- Recommended ROC periods: from 5 to 24.
-- Recommended Sources : close, hlc3, hlcc4
-- Recommended Chart Timeframe : 4h +
-- Notes window : add your custom comments here or save your webhook messages inside here
-- Trading Session: in a session, you have to specify the time range for every day. It will trade only within this window and close trades when it's out. Session from 9am to 5pm will look like that: 0900-1700 or 7am to 4:30pm 0700-1630. After the colon, you can specify days of the week for your trading session. 1234567 trading all days, 23456 – Monday to Friday ('1 is Sunday here'). 0000-0000:1234567 by default will trade every day nonstop. 00.00am to 00.00pm and 1234567 every day of the week for example - Cryptocurrencies.
This script is simple to use for any trader as it saves a lot of time for searching good parameters on your own. It's self-optimizing and adjusting to the markets on the go.
Aroon and ASH strategy - ETHERIUM [IkkeOmar]Intro:
This post introduces a Pine Script strategy, as an example if anyone needs a push to get started. This example is a strategy on ETH, obviously it isn't a good strategy, and I wouldn't share my own good strategies because of alpha decay. This strategy combines two technical indicators: Aroon and Absolute Strength Histogram (ASH).
Overview:
The strategy employs the Aroon indicator alongside the Absolute Strength Histogram (ASH) to determine market trends and potential trade setups. Aroon helps identify the strength and direction of a trend, while ASH provides insights into the strength of momentum. By combining these indicators, the strategy aims to capture profitable trading opportunities in Ethereum markets. Normally when developing strats using indicators, you want to find some good indicators, but you NEED to understand their strengths and weaknesses, other indicators can be incorporated to minimize the downs of another indicator. Try to look for synergy in your indicators!
Indicator settings:
Aroon Indicator:
- Two sets of parameters are used for the Aroon indicator:
- For Long Positions: Aroon periods are set to 56 (upper) and 20 (lower).
- For Short Positions: Aroon periods are set to 17 (upper) and 55 (lower).
Absolute Strength Histogram (ASH):
ASH is calculated with a length of 9 bars using the closing price as the data source.
Trading Conditions:
The strategy incorporates specific conditions to initiate and exit trades:
Start Date:
Traders can specify the start date for backtesting purposes.
Trade Direction:
Traders can select the desired trade direction: Long, Short, or Both.
Entry and Exit Conditions:
1. Long Position Entry: A long position is initiated when the Aroon indicator crosses over (crossover) the lower Aroon threshold, indicating a potential uptrend.
2. Long Position Exit: A long position is closed when the Aroon indicator crosses under (crossunder) the lower Aroon threshold.
3. Short Position Entry: A short position is initiated when the Aroon indicator crosses under (crossunder) the upper Aroon threshold, signaling a potential downtrend.
4. Short Position Exit: A short position is closed when the Aroon indicator crosses over (crossover) the upper Aroon threshold.
Disclaimer:
THIS ISN'T AN OPTIMAL STRATEGY AT ALL! It was just an old project from when I started learning pine script!
The backtest doesn't promise the same results in the future, always do both in-sample and out-of-sample testing when backtesting a strategy. And make sure you forward test it as well before implementing it!
[strategy][1H] SPY slow stochastics
SPY slow stochastics
Overview
The "SPY Auto RSI Stochastics" strategy is designed to leverage a combination of Relative Strength Index (RSI) and Stochastic indicators to identify potential entry and exit points in trading the SPY $SP:SPX.
The technicals:
A simple yet effective strategy for identifying (reversal) trends on SPY (or any asset).
The logic is as follows:
1. Slow stochastics are effective at predicting momentum. They can also be used to effectively identify reversals.
2. A combination of slow and fast RSI (along with an SMA for the fast RSI) can be used to see potential changes in the directional trend of the underlying asset.
3. In order to reduce noise, a band in the middle of RSI values is ignored; think of this as the price converging and potential explosions (sometimes fake) on either side.
4. Outside this noise band, a crossover of fast RSI on slow RSI indicates an upward trend incoming.
5. A crossunder of fast RSI on slow RSI indicates a downward trend incoming.
Strategy Specific Notes -
1. Load this strategy on SPREADEX:SPX on an hourly chart for the best results.
2. This is a generic strategy, use it on anything - index, stocks, etc. You will need to adjust the parameters for the best results.
3. The RSI Upper defines the cutoff for two things -- threshold for entering a long AND exit signal for short. Likewise for RSI Lower.
4. To have alerts on the strategy, add this to your chart, be content with the backtesting results, select "strategy tester", the alert icon, replace the message body with "{{strategy.order.alert_message}}" without the ".
5. In my experience, the strategy won't be immediately profitable upon a signal but it does get there in the backtested results. Intuitively, this makes sense. Reversals take some time to kick in completely.
Inputs
- **slowRSILength**: Length parameter for the slow RSI calculation.
- **fastRSILength**: Length parameter for the fast RSI calculation.
- **smaRSILength**: Length parameter for the Simple Moving Average (SMA) of the fast RSI.
- **RSIUpperThreshold**: Upper threshold for the RSI, used in exit conditions.
- **RSILowerThreshold**: Lower threshold for the RSI, used in exit conditions.
- **RSIUpperDeadzone**: Upper deadzone threshold for the RSI.
- **RSILowerDeadzone**: Lower deadzone threshold for the RSI.
Strategy Logic
- **RSI Calculation**: The script calculates both slow and fast RSI values based on the provided lengths.
- **Entry Condition**: Entry conditions for long and short positions are based on the crossing of fast RSI over slow RSI and SMA RSI, respectively, along with avoidance of RSI deadzones and validation of trade time.
- **Exit Condition**: Exit conditions for both long and short positions are based on crossing RSI thresholds or opposite entry conditions.
Trade Management
- **Position Entry**: Long and short positions are entered based on predefined entry conditions.
- **Position Exit**: Positions are exited based on predefined exit conditions.
- **Alerts**: The script provides alert messages for entry and exit points.
Plotting
- **Slow RSI**: Plots the slow RSI on the chart.
- **SMA RSI**: Plots the Simple Moving Average of fast RSI on the chart.
Example Usage
The defaults work well for SPY on a 1H timeframe.
If you apply this to anything else DAX, EUSTX50, FTSE, CAC (these are what i have); tweak the input parameters.
Plotting
plot(slowRSI, "Slow RSI", color=color.green) //or fastRSI
plot(smaRSI, "SMA RSI", color=color.white)
Conclusion
The "SPY Auto RSI Stochastics" strategy combines RSI and Stochastic indicators to provide potential trade signals for the SPY ETF. Traders can use this strategy with proper risk management and analysis to enhance their trading decisions.
Crypto MVRV ZScore - Strategy [PresentTrading]█ Introduction and How it is Different
The "Crypto Valuation Extremes: MVRV ZScore - Strategy " represents a cutting-edge approach to cryptocurrency trading, leveraging the Market Value to Realized Value (MVRV) Z-Score. This metric is pivotal for identifying overvalued or undervalued conditions in the crypto market, particularly Bitcoin. It assesses the current market valuation against the realized capitalization, providing insights that are not apparent through conventional analysis.
BTCUSD 6h Long/Short Performance
Local
█ Strategy, How It Works: Detailed Explanation
The strategy leverages the Market Value to Realized Value (MVRV) Z-Score, specifically designed for cryptocurrencies, with a focus on Bitcoin. This metric is crucial for determining whether Bitcoin is currently undervalued or overvalued compared to its historical 'realized' price. Below is an in-depth explanation of the strategy's components and calculations.
🔶Conceptual Foundation
- Market Capitalization (MC): This represents the total dollar market value of Bitcoin's circulating supply. It is calculated as the current price of Bitcoin multiplied by the number of coins in circulation.
- Realized Capitalization (RC): Unlike MC, which values all coins at the current market price, RC is computed by valuing each coin at the price it was last moved or traded. Essentially, it is a summation of the value of all bitcoins, priced at the time they were last transacted.
- MVRV Ratio: This ratio is derived by dividing the Market Capitalization by the Realized Capitalization (The ratio of MC to RC (MVRV Ratio = MC / RC)). A ratio greater than 1 indicates that the current price is higher than the average price at which all bitcoins were purchased, suggesting potential overvaluation. Conversely, a ratio below 1 suggests undervaluation.
🔶 MVRV Z-Score Calculation
The Z-Score is a statistical measure that indicates the number of standard deviations an element is from the mean. For this strategy, the MVRV Z-Score is calculated as follows:
MVRV Z-Score = (MC - RC) / Standard Deviation of (MC - RC)
This formula quantifies Bitcoin's deviation from its 'normal' valuation range, offering insights into market sentiment and potential price reversals.
🔶 Spread Z-Score for Trading Signals
The strategy refines this approach by calculating a 'spread Z-Score', which adjusts the MVRV Z-Score over a specific period (default: 252 days). This is done to smooth out short-term market volatility and focus on longer-term valuation trends. The spread Z-Score is calculated as follows:
Spread Z-Score = (Market Z-Score - MVVR Ratio - SMA of Spread) / Standard Deviation of Spread
Where:
- SMA of Spread is the simple moving average of the spread over the specified period.
- Spread refers to the difference between the Market Z-Score and the MVRV Ratio.
🔶 Trading Signals
- Long Entry Condition: A long (buy) signal is generated when the spread Z-Score crosses above the long entry threshold, indicating that Bitcoin is potentially undervalued.
- Short Entry Condition: A short (sell) signal is triggered when the spread Z-Score falls below the short entry threshold, suggesting overvaluation.
These conditions are based on the premise that extreme deviations from the mean (as indicated by the Z-Score) are likely to revert to the mean over time, presenting opportunities for strategic entry and exit points.
█ Practical Application
Traders use these signals to make informed decisions about opening or closing positions in the Bitcoin market. By quantifying market valuation extremes, the strategy aims to capitalize on the cyclical nature of price movements, identifying high-probability entry and exit points based on historical valuation norms.
█ Trade Direction
A unique feature of this strategy is its configurable trade direction. Users can specify their preference for engaging in long positions, short positions, or both. This flexibility allows traders to tailor the strategy according to their risk tolerance, market outlook, or trading style, making it adaptable to various market conditions and trader objectives.
█ Usage
To implement this strategy, traders should first adjust the input parameters to align with their trading preferences and risk management practices. These parameters include the trade direction, Z-Score calculation period, and the thresholds for long and short entries. Once configured, the strategy automatically generates trading signals based on the calculated spread Z-Score, providing clear indications for potential entry and exit points.
It is advisable for traders to backtest the strategy under different market conditions to validate its effectiveness and adjust the settings as necessary. Continuous monitoring and adjustment are crucial, as market dynamics evolve over time.
█ Default Settings
- Trade Direction: Both (Allows for both long and short positions)
- Z-Score Calculation Period: 252 days (Approximately one trading year, capturing a comprehensive market cycle)
- Long Entry Threshold: 0.382 (Indicative of moderate undervaluation)
- Short Entry Threshold: -0.382 (Signifies moderate overvaluation)
These default settings are designed to balance sensitivity to market valuation extremes with a pragmatic approach to trade execution. They aim to filter out noise and focus on significant market movements, providing a solid foundation for both new and experienced traders looking to exploit the unique insights offered by the MVRV Z-Score in the cryptocurrency market.
PresentTrend RMI Synergy - Strategy [presentTrading] █ Introduction and How it is Different
The "PresentTrend RMI Synergy Strategy" is the combined power of the Relative Momentum Index (RMI) and a custom presentTrend indicator. This strategy introduces a multifaceted approach, integrating momentum analysis with trend direction to offer traders a more nuanced and responsive trading mechanism.
BTCUSD 6h L/S Performance
Local
█ Strategy, How It Works: Detailed Explanation
The "PresentTrend RMI Synergy Strategy" intricately combines the Relative Momentum Index (RMI) and a custom SuperTrend indicator to create a powerful tool for traders.
🔶 Relative Momentum Index (RMI)
The RMI is a variation of the Relative Strength Index (RSI), but instead of using price closes against itself, it measures the momentum of up and down movements in price relative to previous prices over a given period. The RMI for a period length `N` is calculated as follows:
RMI = 100 - 100/ (1 + U/D)
where:
- `U` is the average upward price change over `N` periods,
- `D` is the average downward price change over `N` periods.
The RMI oscillates between 0 and 100, with higher values indicating stronger upward momentum and lower values suggesting stronger downward momentum.
RMI = 21
RMI = 42
For more information - RMI Trend Sync - Strategy :
🔶 presentTrend Indicator
The presentTrend indicator combines the Average True Range (ATR) with a moving average to determine trend direction and dynamic support or resistance levels. The presentTrend for a period length `M` and a multiplier `F` is defined as:
- Upper Band: MA + (ATR x F)
- Lower Band: MA - (ATR x F)
where:
- `MA` is the moving average of the close price over `M` periods,
- `ATR` is the Average True Range over the same period,
- `F` is the multiplier to adjust the sensitivity.
The trend direction switches when the price crosses the presentTrend bands, signaling potential entry or exit points.
presentTrend length = 3
presentTrend length = 10
For more information - PresentTrend - Strategy :
🔶 Strategy Logic
Entry Conditions:
- Long Entry: Triggered when the RMI exceeds a threshold, say 60, indicating a strong bullish momentum, and when the price is above the presentTrend, confirming an uptrend.
- Short Entry: Occurs when the RMI drops below a threshold, say 40, showing strong bearish momentum, and the price is below the present trend, indicating a downtrend.
Exit Conditions with Dynamic Trailing Stop:
- Long Exit: Initiated when the price crosses below the lower presentTrend band or when the RMI falls back towards a neutral level, suggesting a weakening of the bullish momentum.
- Short Exit: Executed when the price crosses above the upper presentTrend band or when the RMI rises towards a neutral level, indicating a reduction in bearish momentum.
Equations for Dynamic Trailing Stop:
- For Long Positions: The exit price is set at the lower SuperTrend band once the entry condition is met.
- For Short Positions: The exit price is determined by the upper SuperTrend band post-entry.
These dynamic trailing stops adjust as the market moves, providing a method to lock in profits while allowing room for the position to grow.
This strategy's strength lies in its dual analysis approach, leveraging RMI for momentum insights and presentTrend for trend direction and dynamic stops. This combination offers traders a robust framework to navigate various market conditions, aiming to capture trends early and exit positions strategically to maximize gains and minimize losses.
█ Trade Direction
The strategy provides flexibility in trade direction selection, offering "Long," "Short," or "Both" options to cater to different market conditions and trader preferences. This adaptability ensures that traders can align the strategy with their market outlook, risk tolerance, and trading goals.
█ Usage
To utilize the "PresentTrend RMI Synergy Strategy," traders should input their preferred settings in the Pine Script™ and apply the strategy to their charts. Monitoring RMI for momentum shifts and adjusting positions based on SuperTrend signals can optimize entry and exit points, enhancing potential returns while managing risk.
█ Default Settings
1. RMI Length: 21
The 21-period RMI length strikes a balance between capturing momentum and filtering out market noise, offering a medium-term outlook on market trends.
2. Super Trend Length: 7
A SuperTrend length of 7 periods is chosen for its responsiveness to price movements, providing a dynamic framework for trend identification without excessive sensitivity.
3. Super Trend Multiplier: 4.0
The multiplier of 4.0 for the SuperTrend indicator widens the trend bands, focusing on significant market moves and reducing the impact of minor fluctuations.
---
The "PresentTrend RMI Synergy Strategy" represents a significant step forward in trading strategy development, blending momentum and trend analysis in a unique way. By providing a detailed framework for understanding market dynamics, this strategy empowers traders to make more informed decisions.
RPPI Futures & Indices Strategy Tester [SS Premium]Hello everyone,
As promised, here is the strategy companion to the RPPI Futures & Indicies Indicator.
It contains all of the models of the RPPI but the functionality is all about back-testing the strategy. As such, you cannot use this to run probabilities, run autoregression assessments, or do any of the advanced RPPI features, this is solely to allow you to develop and implement a sustainable strategy in your trading using the RPI.
When you launch the indicator, in the settings menu, you will see toggles to customize the strategy you would like to apply:
You can customize your short and long entries and your short and long exits and then review the backtest results of these various combinations.
From there, you can open up tradingview's strategy tester to see the immediate success of the strategy. If you want to test how effective your strategy is further back, you can make use of Tradingview's "Deep Backtesting" option. This allows you to select a start date way in the past, and back-test over numerous months / years, to see if the strategy has been sustainable in the long term.
To read more about the RPPI, you can check out its own page which lists the details of the indicator, how it works and how to use it. As a synopsis, the RPPI is a compendium indicator that contains various models of multiple futures and stocks. This is to attempt to accurately forecast daily, weekly, monthly, 3 month and annual moves on various futures and indices.
This strategy companion will help you hone in on ideal entries and exits and allow you to tailor them to each ticker that you are interested in trading, on whichever timeframe you are interested in trading.
Some important notes when applying the back-testing results:
1. If you are back-testing daily levels, it is recommended to use the 1 to 5-minute chart max.
2. iF you are back-testing weekly levels, it is recommended to use at least 15 to 30 minutes, up to 60 minute candles.
3. Monthly levels, its best to use 1 hour and up.
4. Greater than monthly, its best to use 3 to 4 hours, to daily candles and up.
As always, feel free to leave your questions or suggestions below.
Thank you for reading and, as always, safe trades!
Single Swing Strategy (SSS)Introduction
The Single Swing Strategy (SSS) is a trading strategy designed for assets that trend. It utilises a single technical indicator to identify potential buying opportunities in upward-trending markets. The strategy focuses on moments when the price of an asset breaks out to a new high, suggesting a strong upward momentum.
Components
1. Exponential Moving Averages (EMAs): SSS uses two EMAs to evaluate the overall asset trend. SSS describes an uptrend as identified, when the fast EMA crosses above the slow EMA and vice versa for a downtrend.
2. Breakout: The strategy validates the trend identified by the EMAs through breakouts in the price action of the asset over a specified lookback period. No indicator is required for this step.
3. Average Directional Index (ADX): The ADX is used to measure the strength of a trend. It does not indicate the trend's direction but rather its strength, whether it's an uptrend or downtrend. A high ADX value (typically above 25) suggests a strong trend, either up or down while a low ADX value (typically below 20) indicates a weak or non-trending market. The ADX itself is a moving average of the expanding range between the +DI and -DI.
4. Positive Directional Indicator (DI+): DI+ helps identify the presence and strength of uptrends. It is calculated based on the upward price movement between current and previous highs. A rising DI+ alongside a rising ADX suggests a strengthening uptrend. When DI+ crosses above DI-, it's often interpreted as a bullish signal.
5. Negative Directional Indicator (DI-): DI- is used to detect the presence and strength of downtrends.It is derived from the downward price movement between current and previous lows. An increasing DI- along with a rising ADX indicates a strengthening downtrend while a crossover of DI- above DI+ is typically seen as a bearish signal.
How it works
1. Regime filter with ADX, DI+, and DI-: The first step in taking a trade is to determine the direction of the trend using the +DI. If in an uptrend, the strategy checks if the ADX is above 25 to confirm a strong uptrend. -DI is not used since the strategy is long only. If in an uptrend and the trend is strong, trades can be opened.
2. Trend Identification with EMAs: Initially, the strategy uses two Exponential Moving Averages (fast and slow) to determine the asset trend. A fast EMA crossing above the slow EMA signifies an uptrend, and vice versa for a downtrend. This is the Entry signal to open a long position.
3. Trend Confirmation with Breakout: The strategy confirms the EMA-indicated trend through price breakouts over a specified lookback period. An EMA crossover without a price action breakout does not lead to an entry signal
4. Trade Management: After entering a trade, the strategy uses predefined levels for taking profit and setting stop losses. Trades are closed either when the price reaches the take-profit level or falls to the stop-loss level. Hence, risk management is built in.
Results
The backtest results can be found below. Initial capital of 10000 was used, this is a convenient amount for most retail traders, commission of $3 per order, position size of 3% of initial capital and slippage of 3 ticks. These are all representative of real world retail trading conditions.
Originality
The Single Swing Strategy (SSS)'s originality is in its blending of classical technical analysis; Trend Analysis through EMAs and Price Action through Breakout, into an innovative trading logic.
1. The Essence of Trend and Breakout in SSS
(i) Trend Recognition: At the heart of SSS is the Exponential Moving Averages (EMAs). While the use of EMAs is common, SSS employs them for trend analysis so an entry decision can be made. The strategy's core algorithm assesses the inception of an upward trend by observing a specific crossing pattern of the EMAs, a moment where the asset's momentum shifts, offering a strategic advantage.
(ii) Breakout Significance: The strategy's reliance on price breakouts isn't just about identifying a new high; it's about understanding market psychology. A breakout beyond a previous high signals not only momentum but also a collective market sentiment that favors upward movement. SSS attempts to capture this momentum, translating it into a tangible trading opportunity.
(iii)Strength of trend: The ADX and +DI double checks the trend is in the right direction and checks to see if the trend is strong enough hence, it prevents trading when the trend is not supportive.
2. Simplicity as a Cornerstone
(i) Clarity and Efficiency: In the realm of algorithmic trading, complexity isn't always synonymous with effectiveness. SSS' simplicity ensures its logic is transparent and its execution, efficient. This simplicity is a strategic choice, designed to reduce overfitting to past data and improve adaptability to real-market conditions.
(ii) Ease of Use and Decision Making: The straightforward nature of SSS may empower traders to make informed decisions without being overwhelmed by convoluted indicators. This is particularly useful because of the embedding of risk management using defined exit points after entry through a Take Profit and Stop Loss. This hardcodes a 3:1 risk reward ratio into every trade.
3. Positive Expectancy
(i) Performance Metrics: The SSS strategy shows its edge in its backtesting results. A 62% win rate, a profit factor of 1.7, profit ratio of 1.05 and an average trade gain of 4.7% are not just numbers; they show the mathematical edge over the backtest period, especially considering the high commissions and slippage factored into its design.
Trading
The SSS strategy has been backtested on the 1D timeframe of BTCUSD but users are encouraged to try it on other assets such as SPXL (5min), AAPL (5min) and others but the appropriate timeframe and trading costs may vary.
NOTE
Like any trading strategy, SSS does not guarantee profits. It's a tool to assist in decision-making, not a foolproof solution. Trading involves risks, particularly in volatile markets. Users should trade responsibly, considering their risk tolerance and financial situation. While SSS automates some aspects of trading, it requires continuous monitoring and does not replace the need for sound judgement and decision-making by the trader.
Turtle Trader StrategyTurtle Trader Strategy :
Introduction :
This strategy is based on the well known « Turtle Trader Strategy », that has proven itself over the years. It sends long and short signals with pyramid orders of up to 5, meaning that the strategy can trigger up to 5 orders in the same direction. Good risk and money management.
It's important to note that the strategy combines 2 systems working together (S1 and S2). Let’s describe the specific features of this strategy.
1/ Position size :
Position size is very important for turtle traders to manage risk properly. This position sizing strategy adapts to market volatility and to account (gains and losses). It’s based on ATR (Average True Range) which can also be called « N ». Its length is per default 20.
ATR(20) = (previous_atr(20)*19 + actual_true_range)/20
The number of units to buy is :
Unit = 1% * account/(ATR(20)*dollar_per_point)
where account is the actual account value and dollar_per_point is the variation in dollar of the asset with a 1 point move.
Depending on your risk aversion, you can increase the percentage of your account, but turtle traders default to 1%. If you trade contracts, units must be rounded down by default.
There is also an additional rule to reduce the risk if the value of the account falls below the initial capital : in this case and only in this case, account in the unit formula must be replace by :
account = actual_account*actual_account/initial capital
2/ Open a position :
2 systems are working together :
System 1 : Entering a new 20 day breakout
System 2 : Entering a new 55 day breakout
A breakout is a new high or new low. If it’s a new high, we open long position and vice versa if it’s a new low we enter in short position.
We add an additional rule :
System 1 : Breakout is ignored if last long/short position was a winner
System 2 : All signals are taken
This additional rule allows the trader to be in the major trends if the system 1 signal has been skipped. If a signal for system 1 has been skipped, and next candle is also a new 20 day breakout, S1 doesn’t give a signal. We have to wait S2 signal or wait for a candle that doesn’t make a new breakout to reactivate S1.
3/ Pyramid orders :
Turtle Strategy allows us to add extra units to the position if the price moves in our favor. I've configured the strategy to allow up to 5 orders to be added in the same direction. So if the price varies from 0.5*ATR(20) , we add units with the position size formula. Note that the value of account will be replaced by "remaining_account", i.e. the cash remaining in our account after subtracting the value of open positions.
4/ Stop Loss :
We set a stop loss at 1.5*ATR(20) below the entry price for longs and above the entry price for shorts. If pyramid units are added, the stop is increased/decreased by 0.5*ATR(20). Note that if SL is configured for a loss of more than 10%, we set the SL to 10% for the first entry order to avoid big losses. This configuration does not work for pyramid orders as SL moves by 0.5*ATR(20).
5/ Exit signals :
System 1 :
Exit long on a 10 day low
Exit short on a 10 day high
System 2 :
Exit long on a 20 day low
Exit short on a 20 day high
6/ What types of orders are placed ?
To enter in a position, stop orders are placed meaning that we place orders that will be automatically triggered by the signal at the exact breakout price. Stop loss and exit signals are also stop orders. Pyramid orders are market orders which will be triggered at the opening of the next candle to avoid repainting.
PARAMETERS :
Risk % of capital : Percentage used in the position size formula. Default is 1%
ATR period : ATR length used to calculate ATR. Default is 20
Stop ATR : Parameters used to fix stop loss. Default is 1.5 meaning that stop loss will be set at : buy_price - 1.5*ATR(20) for long and buy_price + 1.5*ATR(20) for short. Turtle traders default is 2 but 1.5 is better for cryptocurrency as there is a huge volatility.
S1 Long : System 1 breakout length for long. Default is 20
S2 Long : System 2 breakout length for long. Default is 55
S1 Long Exit : System 1 breakout length to exit long. Default is 10
S2 Long Exit : System 2 breakout length to exit long. Default is 20
S1 Short : System 1 breakout length for short. Default is 15
S2 Short : System 2 breakout length for short. Default is 55
S1 Short Exit : System 1 breakout length to exit short. Default is 7
S2 Short Exit : System 2 breakout length to exit short. Default is 20
Initial capital : $1000
Fees : Interactive Broker fees apply to this strategy. They are set at 0.18% of the trade value.
Slippage : 3 ticks or $0.03 per trade. Corresponds to the latency time between the moment the signal is received and the moment the order is executed by the broker.
Pyramiding : Number of orders that can be passed in the same direction. Default is 5.
Important : Turtle traders don't trade crypto. For this specific asset type, I modify some parameters such as SL and Short S1 in order to maximize return while limiting drawdown. This strategy is the most optimal on BINANCE:BTCUSD in 1D timeframe with the parameters set per default. If you want to use this strategy for a different crypto please adapt parameters.
NOTE :
It's important to note that the first entry order (long or short) will be the largest. Subsequent pyramid orders will have fewer units than the first order. We've set a maximum SL for the first order of 10%, meaning that you won't lose more than 10% of the value of your first order. However, it is possible to lose more on your pyramid orders, as the SL is increased/decreased by 0.5*ATR(20), which does not secure a loss of more than 10% on your pyramid orders. The risk remains well managed because the value of these orders is less than the value of the first order. Remain vigilant to this small detail and adjust your risk according to your risk aversion.
Enjoy the strategy and don’t forget to take the trade :)
FlexiMA x FlexiST - Strategy [presentTrading]█ Introduction and How it is Different
The FlexiMA x FlexiST Strategy blends two analytical methods - FlexiMA and FlexiST, which are opened in my early post.
- FlexiMA calculates deviations between an indicator source and a dynamic moving average, controlled by a starting factor and increment factor.
- FlexiST, on the other hand, leverages the SuperTrend model, adjusting the Average True Range (ATR) length for a comprehensive trend-following oscillator.
This synergy offers traders a more nuanced and multifaceted tool for market analysis.
BTC 6H L/S Performance
Local
█ Strategy, How It Works: Detailed Explanation
The strategy combines two components: FlexiMA and FlexiST, each utilizing unique methodologies to analyze market trends.
🔶FlexiMA Component:
- Calculates deviations between an indicator source and moving averages of variable lengths.
- Moving average lengths are dynamically adjusted using a starting factor and increment factor.
- Deviations are normalized and analyzed to produce median and standard deviation values, forming the FlexiMA oscillator.
Length indicator (50)
🔶FlexiST Component:
- Uses SuperTrend indicators with varying ATR (Average True Range) lengths.
- Trends are identified based on the position of the indicator source relative to the SuperTrend bands.
- Deviations between the indicator source and SuperTrend values are calculated and normalized.
Starting Factor (5)
🔶Combined Strategy Logic:
- Entry Signals:
- Long Entry: Triggered when median values of both FlexiMA and FlexiST are positive.
- Short Entry: Triggered when median values of both FlexiMA and FlexiST are negative.
- Exit Signals:
- Long Exit: Triggered when median values of FlexiMA or FlexiST turn negative.
- Short Exit: Triggered when median values of FlexiMA or FlexiST turn positive.
This strategic blend of FlexiMA and FlexiST allows for a nuanced analysis of market trends, providing traders with signals based on a comprehensive view of market momentum and trend strength.
█ Trade Direction
The strategy is designed to cater to various trading preferences, offering "Long", "Short", and "Both" options. This flexibility allows traders to align the strategy with their specific market outlook, be it bullish, bearish, or a combination of both.
█ Usage
Traders can effectively utilize the FlexiMA x FlexiST Strategy by first selecting their desired trade direction. The strategy then generates entry signals when the conditions for either the FlexiMA or FlexiST are met, indicating potential entry points in the market. Conversely, exit signals are generated when the conditions for these indicators diverge, thus signaling a potential shift in market trends and suggesting a strategic exit point.
█ Default Settings
1. Indicator Source (HLC3): Provides a balanced and stable price source, reducing the impact of extreme market fluctuations.
2. Indicator Lengths (20 for FlexiMA, 10 for FlexiST): Longer FlexiMA length smooths out short-term fluctuations, while shorter FlexiST length allows for quicker response to market changes.
3. Starting Factors (1.0 for FlexiMA, 0.618 for FlexiST): Balanced start for FlexiMA and a harmonized approach for FlexiST, resonating with natural market cycles.
4. Increment Factors (1.0 for FlexiMA, 0.382 for FlexiST): FlexiMA captures a wide range of market behaviors, while FlexiST provides a gradual transition to capture finer trend shifts.
5. Normalization Methods ('None'): Uses raw deviations, suitable for markets where absolute price movements are more significant.
6. Trade Direction ('Both'): Allows strategy to consider both long and short opportunities, ideal for versatile market engagement.
*More details:
1. FlexiMA
2. FlexiST
Megabar Breakout (Range & Volume & RSI)Hey there,
This strategy is based on the idea that certain events lead to what are called Megabars. Megabars are bars that have a very large range and volume. I wanted to verify whether these bars indicate the start of a trend and whether one should follow the trend.
Summary of the Code:
The code is based on three indicators: the range of the bar, the volume of the bar, and the RSI. When certain values of these indicators are met, a Megabar is identified. The direction of the Megabar indicates the direction in which we should trade.
Why do I combine these indicators?
I want to identify special bars that have the potential to mark the beginning of a breakout. Therefore, a bar needs to exhibit high volume, have a large range (huge price movement), and we also use the Relative Strength Index (RSI) to assess potential momentum. Only if all three criteria are met within one candle, do we use this as an identifier for a megabar.
Explanation of Drawings on the Chart:
As you can see, there is a green background on my chart. The green background symbolizes the time when I'm entering a trade. Only if a Megabar happens during that time, I'm ready to enter a trade. The time is between 6 AM and 4 PM CET. It's just because I prefer that time. Also, the strategy draws an error every time a Megabar happens based on VOL and Range only (not on the RSI). That makes it pretty easy to go through your chart and check the biggest bars manually. You can activate or deactivate these settings via the input data of the strategy.
When Do We Enter a Trade?
We wait for a Megabar to happen during our trading session. If the Megabar is bullish, we open a LONG trade at the opening price of the next candle. If the Megabar is bearish, we open a SHORT trade at the opening price of the next candle.
Where Do We Put Our Take Profit & Stop Loss?
The default setting is TP = 40 Pips and SL = 30 Pips. In that case, we are always trading with a risk-reward ratio of 1.33 by default. You can easily change these settings via the input data of the strategy.
Strategy Results
The criteria for Megabars were chosen by me in a way that makes Megabars something special. They are not intended to occur too frequently, as the fundamental idea of this strategy would otherwise not hold. This results in only 37 closed trades within the last 12 months. If you change the criterias for a megabar to a milder one, you will create more Megabars and therefore more trades. It's up to you. I have adapted this strategy to the 30-minute chart of the EURUSD. In the evaluation, we consider a period of 12 months, which I believe is sufficient.
My default settings for the indicators look like this:
Avg Length Vol 20
Avg Multiplier Vol 3
Avg Length Range 20
Avg Multiplier Range 4
Value SMA RSI for Long Trades 50
Value SMA RSI for Short Trades 70
IMPORTANT: The current performance overview does not display the results of these settings. Please change the settings to my default ones so that you can see how I use this strategy.
I do not recommend trading this strategy without further testing. The script is meant to reflect a basic idea and be used as a tool to identify Megabars. I have made this strategy completely public so that it can be further developed. One can take this framework and test it on different timeframes and different markets.
London BreakOut ClassicHey there, this is my first time publishing a strategy. The strategy is based on the London Breakout Idea, an incredibly popular concept with abundant information available online.
Let me summarize the London Breakout Strategy in a nutshell: It involves identifying key price levels based on the Tokyo Session before the London Session starts. Typically, these key levels are the high and low of the previous Tokyo session. If a breakout occurs during the London session, you simply follow the trend.
The purpose of this code
After conducting my research, I came across numerous posts, videos, and articles discussing the London Breakout Strategy. I aimed to automatically test it myself to verify whether the claims made by these so-called trading gurus are accurate or not. Consequently, I wrote this script to gain an understanding of how this strategy would perform if I were to follow its basic settings blindly.
Explanation of drawings on the chart:
Red or Green Box: A box is drawn on our chart displaying the exact range of the Tokyo trading session. This box is colored red if the trend during the session was downward and green if it was upward. The box is always drawn between the high and the low between 0:00 AM and 7:00 AM UTC. You can change the settings via the Inputs "Session time Tokyo" & "Session time zone".
Green Background: The green background represents the London trading session. My code allows us to make entries only during this time. If we haven't entered a trade, any pending orders are canceled. I've also programmed a timeout at 11 pm to ensure every trade is closed before the new Tokyo session begins.
Red Line: The red line is automatically placed in the middle of our previous Tokyo range. This line acts as our stop loss. If we cross this line after entering a trade but before reaching our take profit, we'll be stopped out.
When do we enter a trade?
We wait for a candle body to close outside of the previous Tokyo range to enter a trade with the opening of the next candle. We only enter one trade per day.
Where do we put our Take Profit?
The code calculates the exact distance between our entry point and the stop loss. We are trading a risk-reward ratio of 1:1 by default, meaning our take profit is always the same number of pips away from our entry as the stop loss. The Stop Loss is always defined by the red line on the chart. You can change the risk-reward ratio via the inputs setting "CRV", to see how the result changes.
What is the purpose of this script?
I wanted to backtest the London breakout strategy to see how it actually works. Therefore, I wrote this code so that everybody can test it for themselves. You can change the settings and see how the result changes. Typically, you should test this strategy on forex markets and on either 1Min, 5 Min, or 15 Min timeframe.
What are the results?
Over the last 3-6 months (over 100 trades), trading the strategy with my default settings hasn't proven to be very successful. Consequently, I do not recommend trading this strategy blindly. The purpose of this code is to provide you with a foundation for the London Breakout Strategy, allowing you to modify and enhance it according to your preferences. If you're contemplating whether to give it a try, you can assess the results from the past months by using this code as a starting point.
MACD of Relative Strenght StrategyMACD Relative Strenght Strategy :
INTRODUCTION :
This strategy is based on two well-known indicators: MACD and Relative Strenght (RS). By coupling them, we obtain powerful buy signals. In fact, the special feature of this strategy is that it creates an indicator from an indicator. Thus, we construct a MACD whose source is the value of the RS. The strategy only takes buy signals, ignoring SHORT signals as they are mostly losers. There's also a money management method enabling us to reinvest part of the profits or reduce the size of orders in the event of substantial losses.
RELATIVE STRENGHT :
RS is an indicator that measures the anomaly between momentum and the assumption of market efficiency. It is used by professionals and is one of the most robust indicators. The idea is to own assets that do better than average, based on their past performance. We calculate RS using this formula :
RS = close/highest_high(RS_Length)
Where highest_high(RS_Length) = highest value of the high over a user-defined time period (which is the RS_Length).
We can thus situate the current price in relation to its highest price over this user-defined period.
MACD (Moving Average Convergence - Divergence) :
This is one of the best-known indicators, measuring the distance between two exponential moving averages : one fast and one slower. A wide distance indicates fast momentum and vice versa. We'll plot the value of this distance and call this line macdline. The MACD uses a third moving average with a lower period than the first two. This last moving average will give a signal when it crosses the macdline. It is therefore constructed using the values of the macdline as its source.
It's important to note that the first two MAs are constructed using RS values as their source. So we've just built an indicator of an indicator. This kind of method is very powerful because it is rarely used and brings value to the strategy.
PARAMETERS :
RS Length : Relative Strength length i.e. the number of candles back to find the highest high and compare the current price with this high. Default is 300.
MACD Fast Length : Relative Strength fast EMA length used to plot the MACD. Default is 14.
MACD Slow Length : Relative Strength slow EMA length used to plot the MACD. Default is 26.
MACD Signal Smoothing : Macdline SMA length used to plot the MACD. Default is 10.
Max risk per trade (in %) : The maximum loss a trade can incur (in percentage of the trade value). Default is 8%.
Fixed Ratio : This is the amount of gain or loss at which the order quantity is changed. Default is 400, meaning that for each $400 gain or loss, the order size is increased or decreased by a user-selected amount.
Increasing Order Amount : This is the amount to be added to or subtracted from orders when the fixed ratio is reached. The default is $200, which means that for every $400 gain, $200 is reinvested in the strategy. On the other hand, for every $400 loss, the order size is reduced by $200.
Initial capital : $1000
Fees : Interactive Broker fees apply to this strategy. They are set at 0.18% of the trade value.
Slippage : 3 ticks or $0.03 per trade. Corresponds to the latency time between the moment the signal is received and the moment the order is executed by the broker.
Important : A bot has been used to test the different parameters and determine which ones maximize return while limiting drawdown. This strategy is the most optimal on BITSTAMP:ETHUSD in 8h timeframe with the parameters set by default.
ENTER RULES :
The entry rules are very simple : we open a long position when the MACD value turns positive. You are therefore LONG when the MACD is green.
EXIT RULES :
We exit a position (whether losing or winning) when the MACD becomes negative, i.e. turns red.
RISK MANAGEMENT :
This strategy can incur losses, so it's important to manage our risks well. If the position is losing and has incurred a loss of -8%, our stop loss is activated to limit losses.
MONEY MANAGEMENT :
The fixed ratio method was used to manage our gains and losses. For each gain of an amount equal to the value of the fixed ratio, we increase the order size by a value defined by the user in the "Increasing order amount" parameter. Similarly, each time we lose an amount equal to the value of the fixed ratio, we decrease the order size by the same user-defined value. This strategy increases both performance and drawdown.
Enjoy the strategy and don't forget to take the trade :)
Crypto Market Strategy (CMS)/Introduction
The Crypto Market Strategy (CMS) is a composite strategy for the cryptocurrency market. It integrates multiple strategies (called signals) to ensure you are exploiting multiple patterns/anomalies in the market.
/Signals
The three distinct strategies, each providing signals based on specific market conditions are explained below:
1. Limit Range: This signal targets stable market periods, triggering signals based on micro breakouts in price. The market during this period is described as stable because of the short lookback period required for breakout, four bars is the default.
2. Trend Breakout: This signal seeks to capitalize on significant market movements following consolidation periods, it triggers when large price breakouts occur. The market during this period is described as volatile because of the long lookback period required for breakout, forty bars is the default.
3. Momentum: After breakouts, price uptrends may persist for a long time, typically weeks to months. This signal captures long term trends.
An upward blue arrow signifies a long entry signal, a downward red arrow indicates a short entry signal, while an upward/downward pink arrow indicates an exit signal. All signals will have a label indicating the triggering strategy and number of units (this can be disabled in the style settings).
/Construction
The strategy is constructed using minimal indicators, it is basically price action and moving averages.
/Settings
The settings are organised according to the signals;
1. Limit range
Entry - This is the size of breakout
+Exit - Closes the trade in profit
-Exit - Closes the trade to minimise loss
2. Trend breakout
Entry - This is the size of the breakout
Exit - Closes the trade to minimise loss
3. Momentum
Entry - This determines how quickly a signal is triggered
Lookback - This is the duration considered for the entry
/Results
The backtest results are based on a starting capital of $13,700 (convenient amount for retail traders) with 5% of equity for the position size and pyramiding of 3 consecutive positions because there are three signals. Commissions vary from broker to broker with some charging zero commissions, so commissions is set to an exorbitant $3 per order to ensure profitability in backtests is reproducible in live trading. Slippage of 3 ticks is used to ensure the results are representative of real world, market order, end-of-day trading. The backtest results are available to view at the bottom of this page.
Note:
Past performance in backtesting does not guarantee future results. Cryptocurrency markets are particularly volatile, and individual execution and market changes can significantly affect strategy performance. Price data may also vary across exchanges.
/Tickers
CMS has been backtested primarily on BTCUSD. It also performs well on ETHUSD.
IchiBot - [SigmaStreet]
The IchiBot Indicator has been used to develop automated trading systems. It leverages the open-source Ichimoku framework provided by Trading View, to enable users to creatively generate over 1 trillion different combinations of trading conditions with the use of multiple timeframes to create unique “signal labels” that can be used to create custom strategies or provide in depth market analysis. At the end of this description, I have provided an example of input settings for a simple scalping strategy that I have back tested on US30 on the 5 minute timeframe.
Overview of the Settings:
The visuals section includes an option to show or hide certain parts of the indicator and change the size of the signal labels plotted on the chart.
Next to the “Signal color on baseline/candles” section, you can choose if you want to see additional signals generations from the most previous plotted label on a color changing baseline, or color changing candles. A color change from gray to blue/red indicate that the conditions from the most previously plotted signal label have been met again.
The next 5 sections are all related to the strategy portion of the indicator, used to aid in the back testing process. These sections are titled “Stop loss”, “Take Profit”, “Trail Stop”, “Trade Settings” and “Trade Schedule”.
The Stop Loss section includes an option to choose between value of “pts”, “atr” (average true range) or “None”. The stop loss value in “pts” is simply a specified number of points or pips from the current entry price of a trade that are input in the “SL” section. If the stop loss type is “atr” the “SL” section is not used and the value is calculated and displaced from the current entry price of a trade based on the atr period multiplied by the atr multiplier.
The take profit section is based on the same logic as the stop loss.
The Trail Stop section includes an option to choose between values “pts” or “None”. If the Trail Stop value is “pts”, a trailing stop loss is activated if a trade moves a point value into profit that exceeds the value of the “Trail Activation”. If the Trail Offset type is “pts”, the trailing stop loss is placed a point value away from the current price that is equal to the “Trail Offset” value.
The trade settings section has two options to either prevent or allow trade reversals and prevent or allow only 1 trade per signal label.
If the “Don’t allow trade reversals” is on, then a currently active trade can not be cancelled by an opposite trade signal. It can only be cancelled by the exit logic selected in the above sections. If the “One trade per signal” is selected, the strategy will only enter a trade if the most recent signal label is different from the last signal label where a trade was entered, or if the most recent signal label is in the opposite direction of the most recent signal label where a trade was entered.
The trade schedule section includes an option to only generate signal labels during the specified time. You can choose between 24/7 which will generate signals without any time restriction, or you can choose a custom time which is based on the America / New York time zone.
The timeframe settings section includes an option to choose “single” or “multiple” timeframes, as well as an option to show every signal label combination (“all”), or only the signal labels with the highest numerical value (“absolute”).
If you select “single” next to “timeframe”, the indicator will show you labels based on trade conditions met from only 1 selected timeframe. If you select “multiple” next to “timeframe”, the indicator is designed to return signal labels based on trade conditions that have been met on at least 2 different timeframes.
If you select “multiple” and “use current timeframe”, the indicator will include labels that always include a minimum of 2 timeframes where 1 timeframe is always the current timeframe. If you unselect the “use current timeframe”, the indicator will include labels with a minimum of 2 timeframes.
If you select “multiple” next to “timeframe” and “all” next to “Show all/absolute labels”, the indicator will show you every possible combination of labels that vary from trade conditions met on a minimum of 2 timeframes, to the maximum number of timeframes selected.
If you select “multiple” next to “timeframe” and “absolute” next to “Show all/absolute labels”, the indicator will only show you labels where the numerical value is equivalent to the maximum number of timeframes selected.
Each signal label provides a number which refers to the number of timeframes used to generate the label, offering insights briefly. Hover over a label to reveal detailed tooltip information that details the exact timeframes used to generate each label.
You can choose all from “Show all/absolute labels” to see every possible combination of trade signals or “absolute” to only see labels that have the highest possible numerical value. Absolute means that every condition selected from every timeframe was calculated to be true at the same time on the same candle.
The next 8 sections are “Current timeframe trade conditions”, “1-minute timeframe trade conditions”, “5-minute timeframe trade conditions”, “15-minute timeframe trade conditions”, “30-minute timeframe trade conditions”, “1-hour timeframe trade conditions”, “4-hour timeframe trade conditions”, “Daily timeframe trade conditions”.
These sections include the same 10 trade conditions, that can be used independently, or in combination with each other. This brings the total number of trade conditions to 70.
The final section includes a standard option to adjust the current Ichimoku values.
Understanding the Calculations:
The term “future” refers to a value that is calculated 26 candles to the right of the most recent closing price.
The term “current” refers to a value that is calculated on the most recent closing price.
The term “past” refers to a value that is calculated 26 candles to the left of the most recent closing price.
Bullish is referred to as “blue” and bearish is referred to as “red”.
Buy Signals:
1. The current closing price is greater than the current cloud value.
2. The future cloud is blue.
3. The current closing price is greater than the current conversion line.
4. The current conversion line is greater than the current baseline.
5. The lagging span is greater than the closing price of the last 25 candles.
6. The lagging span is greater than the past cloud.
7. The lagging span is greater than the past conversion line and the past baseline.
8. The current conversion line is greater than the current cloud.
9. The current baseline is greater than the current cloud.
10. The value of the current cloud to the future cloud is completely blue.
Sell Signals:
1. The current closing price is less than the current cloud value.
2. The future cloud is red.
3. The current closing price is less than the current conversion line.
4. The current conversion line is less than the current baseline.
5. The lagging span is less than the closing price of the last 25 candles.
6. The lagging span is less than the past cloud.
7. The lagging span is less than the past conversion line and the past baseline.
8. The current conversion line is less than the current cloud.
9. The current baseline is less than the current cloud.
10. The value of the current cloud to the future cloud is completely red.
The script enables users to access the value of these 10 trade conditions across the 7 major time frames (1-minute, 5-minute, 15-minute, 30-minute, 1-hour, 4-hour, Daily, and the current charts time frame) by using the official non repainting request security function provided by Trading View:
f_secSecurity(_src, _res, _exp) =>
request.security(_src, _res, _exp )
This indicator provides up to 70 variables (10 variables X 7 timeframes) that can be used separately, or in combination to generate signal labels.
Enhance your visual analysis with a color-changing baseline and candle colors that adapt to signal shifts, offering an immediate understanding of market trends. The base line will change from gray to blue/red which will reference the most previously plotted signal label. This change in color indicate that the conditions from the most recently plotted signal label have been met once again. Please refer to the example below.
Adjustments to the Ichimoku Indicator:
The script uses a slightly refined version of the Ichimoku indicator to calculate 10 different “trade conditions”. Each trade condition can create 1 bullish signal label and 1 bearish signal label. The calculations are primarily based on “greater than and less than logic” which is standard for signal generation.
In the original Ichimoku calculations, the “Lagging Span” has a default value of 26 periods. In the actual calculations, this input with the title “Lagging Span” is referred to as the “displacement”. When the lagging span is plotted on the chart, it is plotted with an offset value of offset = -displacement + 1 which technically plots the lagging span 25 candles to the left the most recent candle (if you count the most recent closing price as 0 and not 1). The clouds are plotted with an offset of offset = displacement -1 which technically plots the clouds 25 candles to the right of the most recent candle.
I have adjusted the logic of the Ichimoku indicator so the lagging span is still plotted 25 candles to the left of the most recently confirmed candle close, but the cloud is plotted 26 candles to the right of the most recent confirmed candle close.
This seemingly small adjustment of one candle cannot simply be adjusted in the settings of the original Ichimoku indicator since the calculations of the cloud and lagging span displacements are directly affected by the same value (displacement = 26, also known as the “lagging span”). My script is adjusted to make calculations where the lagging span is 25 candles to the left of the most recent candle, and the cloud is displaced 26 candles to the right of the most recent candle.
For example, my scripts logic to detect if the current closing price is over the current cloud is (close > leadLead1 and close > leadLine2 and leadLine1 > leadLine2 . By using a lookback of , the logic assumes that the displaced value is 26 bars to the right of the most recent candle. My script also reflects this logic in the plotted values of the cloud where the offset values are offset = displacement. This adjustment is made without affecting any other part of the Ichimoku indicators calculations, only the displacement of the cloud which directly affects the logic of trade conditioins. This change is a deliberate and necessary function of this script’s logic to generate trade conditions and signal labels.
I’ve removed the conversion line and the lagging span and introduced a 26-period pivot high/low to provide a less cluttered chart. The pivot high/low looks 26 periods to the left and only 1 period to the right. The lagging span and conversion line logic is still built into the framework of the trading signals. If you choose to enable the lagging span, or conversion line.
trading approach, and always test your strategies thoroughly.
The function to generate the "Signal Labels" calculates every single possible combination of the 7 different timeframes which is a total of 127 combinations for bullish signal labels, and 127 combinations for bearish signal labels. This function also provides the necessary criteria for the strategy entry conditions, based on the dynamically calculated values derived from the signal labels themselves. For example: "buy signal on 1 minute and 5 minute timeframe" is considered 1 combination, and "Buy signal on current, 5 minute, 15 minute, 30 minute, 1 hour, 4 hour and daily timeframe" is also considered 1 combination. There are a total of 254 combinations between buy and sell signal labels along with 254 individual variables with their own unique tool tip description. The signal label function alone spans over 1340 lines of code (minus spaces and comments) to specifically account for every possible variable combination. This unique and original function also calculates the signal label "value" which is the number you see on the signal label. This function adjusts the amount of labels plotted, the value and description of all labels based on the timeframe settings "single"/"multiple", the use of "use current timeframe" setting, and the "trade schedule". This signal label function has been a landmark piece of code for me in my endeavor to create and optimize my strategies based on its ability to provide an in depth analysis of the timeframes used when generating signal labels. This function is main reason that this script has been published closed source.
Back tested results.
The current results are from US30 (Dow Jones Industrial Average CFD) on the 5-minute timeframe using regular candles. The inputs are as follows:
Stop loss = 5000 pts
No take profit.
Trail activation = 100 pts
Trail offset = 100 pts
Don’t allow trade reversals
Trade 24/7
Timeframe = multiple
Show absolute signals
Use current timeframe, lag span over/under candles
Use 30m timeframe, all cloud is bull/bear
Initial capital = $10,000 USD, 1 contract, $0.07 per contract, slippage = 3 ticks, use bar magnifier = on
Timeframe = June 1st, 2023 – November 10th, 2023, risk = 5% (greatest loosing trade = $500.44)